/**
 * 自动生成！请勿修改！
 */
import { command } from '../core/command';

class WaterFilter {
    constructor(opt = {}) {
        const { device, to, ...opts } = opt;

        this.device = device || {};
        this.opts = opts || {};
        this._to = to;
    }

    get categoryCode() {
        return '010030007';
    }

    get categoryName() {
        return '\u51c0\u6c34\u5668';
    }

    getActualOutflow(params) {
        return command({
            method: 'getActualOutflow',
            methodId: 'pNnZEPUl',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getAutoCleaning(params) {
        return command({
            method: 'getAutoCleaning',
            methodId: 'UmaS3OOw',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getChildLockSwitch(params) {
        return command({
            method: 'getChildLockSwitch',
            methodId: 'UODeXyeC',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getDegree(params) {
        return command({
            method: 'getDegree',
            methodId: 'pkp1q4iI',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getOutflowRate(params) {
        return command({
            method: 'getOutflowRate',
            methodId: 'pqYhWwK5',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getOutflowSwitch(params) {
        return command({
            method: 'getOutflowSwitch',
            methodId: 'pdN7zsuW',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getPurificationMode(params) {
        return command({
            method: 'getPurificationMode',
            methodId: 'pj7xBmLK',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getRemainingDays(params) {
        return command({
            method: 'getRemainingDays',
            methodId: 'UnfcbCNP',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getRemainingFiltration(params) {
        return command({
            method: 'getRemainingFiltration',
            methodId: 'pWG01Uzm',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getSwitch(params) {
        return command({
            method: 'getSwitch',
            methodId: 'ptRS9DmR',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getTargetTemp(params) {
        return command({
            method: 'getTargetTemp',
            methodId: 'p0crOgB9',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getTds(params) {
        return command({
            method: 'getTds',
            methodId: 'pz93i0tE',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getTempMode(params) {
        return command({
            method: 'getTempMode',
            methodId: 'pXZu75bM',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getTimeoutProtection(params) {
        return command({
            method: 'getTimeoutProtection',
            methodId: 'UaMCfj7U',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getWaterTemp(params) {
        return command({
            method: 'getWaterTemp',
            methodId: 'pBTQtl4n',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getWorkingStatus(params) {
        return command({
            method: 'getWorkingStatus',
            methodId: 'p3deou2z',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setAutoCleaning(params) {
        return command({
            method: 'setAutoCleaning',
            methodId: 'pDrhFb1k',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setChildLockSwitch(params) {
        return command({
            method: 'setChildLockSwitch',
            methodId: 'phEqKkro',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setFilterToDefault(params) {
        return command({
            method: 'setFilterToDefault',
            methodId: 'p1vFjxEq',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setOutflowSwitch(params) {
        return command({
            method: 'setOutflowSwitch',
            methodId: 'ppAXIOY3',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setPurificationMode(params) {
        return command({
            method: 'setPurificationMode',
            methodId: 'pGoxHG7b',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setSwitch(params) {
        return command({
            method: 'setSwitch',
            methodId: 'peH3nfgV',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setTargetTemp(params) {
        return command({
            method: 'setTargetTemp',
            methodId: 'pUPQ8jNG',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setTempMode(params) {
        return command({
            method: 'setTempMode',
            methodId: 'pZgRT3Ox',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setTimeoutProtection(params) {
        return command({
            method: 'setTimeoutProtection',
            methodId: 'pgh0mq31',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }
}

export default WaterFilter;
